PLS (complexity)
   HOME

TheInfoList



OR:

In
computational complexity theory In theoretical computer science and mathematics, computational complexity theory focuses on classifying computational problems according to their resource usage, and relating these classes to each other. A computational problem is a task solved by ...
, Polynomial Local Search (PLS) is a
complexity class In computational complexity theory, a complexity class is a set of computational problems of related resource-based complexity. The two most commonly analyzed resources are time and memory. In general, a complexity class is defined in terms of ...
that models the difficulty of finding a locally optimal solution to an
optimization problem In mathematics, computer science and economics, an optimization problem is the problem of finding the ''best'' solution from all feasible solutions. Optimization problems can be divided into two categories, depending on whether the variables ...
. The main characteristics of problems that lie in PLS are that the cost of a solution can be calculated in
polynomial time In computer science, the time complexity is the computational complexity that describes the amount of computer time it takes to run an algorithm. Time complexity is commonly estimated by counting the number of elementary operations performed by ...
and the neighborhood of a solution can be searched in polynomial time. Therefore it is possible to verify whether or not a solution is a local optimum in polynomial time. Furthermore, depending on the problem and the algorithm that is used for solving the problem, it might be faster to find a local optimum instead of a global optimum.


Description

When searching for a local optimum, there are two interesting issues to deal with: First how to find a local optimum, and second how long it takes to find a local optimum. For many local search algorithms, it is not known, whether they can find a local optimum in polynomial time or not. So to answer the question of how long it takes to find a local optimum, Johnson, Papadimitriou and Yannakakis introduced the complexity class PLS in their paper "How easy is local search?”. It contains local search problems for which the local optimality can be verified in polynomial time. A local search problem is in PLS, if the following properties are satisfied: * The size of every solution is polynomially bounded in the size of the instance I. * It is possible to find some solution of a problem instance in polynomial time. * It is possible to calculate the cost of each solution in polynomial time. * It is possible to find all neighbors of each solution in polynomial time. With these properties, it is possible to find for each solution s the best neighboring solution or if there is no such better neighboring solution, state that s is a local optimum.


Example

Consider the following instance I of the
Max-2Sat In computer science, 2-satisfiability, 2-SAT or just 2SAT is a computational problem of assigning values to variables, each of which has two possible values, in order to satisfy a system of constraints on pairs of variables. It is a special case ...
Problem: (x_ \vee x_) \wedge (\neg x_ \vee x_) \wedge (\neg x_ \vee x_). The aim is to find an assignment, that maximizes the sum of the satisfied clauses. A ''solution'' s for that instance is a bit string that assigns every x_ the value 0 or 1. In this case, a solution consists of 3 bits, for example s=000, which stands for the assignment of x_ to x_ with the value 0. The set of solutions F_(I) is the set of all possible assignments of x_, x_ and x_. The ''cost'' of each solution is the number of satisfied clauses, so c_(I, s=000)=2 because the second and third clause are satisfied. The Flip-''neighbor'' of a solution s is reached by flipping one bit of the bit string s, so the neighbors of s are N(I,000)=\ with the following costs: c_(I, 100)=2 c_(I, 010)=2 c_(I, 001)=2 There are no neighbors with better costs than s, if we are looking for a solution with maximum cost. Even though s is not a global optimum (which for example would be a solution s'=111 that satisfies all clauses and has c_(I, s')=3), s is a local optimum, because none of its neighbors has better costs. Intuitively it can be argued that this problem ''lies in PLS'', because: * It is possible to find a solution to an instance in polynomial time, for example by setting all bits to 0. * It is possible to calculate the cost of a solution in polynomial time, by going once through the whole instance and counting the clauses that are satisfied. * It is possible to find all neighbors of a solution in polynomial time, by taking the set of solutions that differ from s in exactly one bit.


Formal Definition

A local search problem L has a set D_L of instances which are encoded using
strings String or strings may refer to: *String (structure), a long flexible structure made from threads twisted together, which is used to tie, bind, or hang other objects Arts, entertainment, and media Films * ''Strings'' (1991 film), a Canadian anim ...
over a finite
alphabet An alphabet is a standardized set of basic written graphemes (called letters) that represent the phonemes of certain spoken languages. Not all writing systems represent language in this way; in a syllabary, each character represents a syll ...
\Sigma. For each instance I there exists a finite solution set F_L(I). Let R be the relation that models L. The relation R \subseteq D_L \times F_L(I) := \ is in PLS if: * The size of every solution s \in F_(I) is polynomial bounded in the size of I * Problem instances I \in D_ and solutions s \in F_(I) are polynomial time verifiable * There is a polynomial time computable function A: D_ \rightarrow F_(I) that returns for each instance I \in D_ some solution s \in F_(I) * There is a polynomial time computable function B: D_L \times F_L(I) \rightarrow \mathbb ^ that returns for each solution s \in F_L(I) of an instance I \in D_L the cost c_L(I, s) * There is a polynomial time computable function N: D_L \times F_L(I) \rightarrow Powerset(F_L(I)) that returns the set of neighbors for an instance-solution pair * There is a polynomial time computable function C: D_L \times F_L(I) \rightarrow N(I, s) \cup \ that returns a neighboring solution s' with better cost than solution s, or states that s is locally optimal * For every instance I \in D_L, R exactly contains the pairs (I, s) where s is a local optimal solution of I An instance D_L has the structure of an
implicit graph In the study of graph algorithms, an implicit graph representation (or more simply implicit graph) is a graph whose vertices or edges are not represented as explicit objects in a computer's memory, but rather are determined algorithmically from so ...
(also called '' Transition graph'' ), the vertices being the solutions with two solutions s, s' \in F_L(I) connected by a directed arc iff s' \in N(I, s). A
local optimum In applied mathematics and computer science, a local optimum of an optimization problem is a solution that is optimal (either maximal or minimal) within a neighboring set of candidate solutions. This is in contrast to a global optimum, which i ...
is a solution s, that has no neighbor with better costs. In the implicit graph, a local optimum is a sink. A neighborhood where every local optimum is a
global optimum In mathematical analysis, the maxima and minima (the respective plurals of maximum and minimum) of a function, known collectively as extrema (the plural of extremum), are the largest and smallest value of the function, either within a given ran ...
, which is a solution with the best possible cost, is called an ''exact neighborhood''.


Alternative Definition

The class PLS is the class containing all problems that can be reduced in polynomial time to the problem Sink-of- DAG (also called Local-Opt ): Given two integers n and m and two
Boolean circuit In computational complexity theory and circuit complexity, a Boolean circuit is a mathematical model for combinational digital logic circuits. A formal language can be decided by a family of Boolean circuits, one circuit for each possible input ...
s S: \^n \rightarrow \^n such that S(0^n) \neq 0^n and V: \^n \rightarrow \, find a vertex x \in \^n such that S(x)\neq x and either S(S(x)) = S(x) or V(S(x)) \leq V(x).


Example neighborhood structures

Example neighborhood structures for problems with boolean variables (or bit strings) as solution: * Flip - The neighborhood of a solution s = x_1 , ..., x_n can be achieved by negating (flipping) one arbitrary input bit x_i. So one solution s and all its neighbors r \in N (I, s) have
Hamming distance In information theory, the Hamming distance between two strings of equal length is the number of positions at which the corresponding symbols are different. In other words, it measures the minimum number of ''substitutions'' required to chan ...
one: H(s, r) = 1. * Kernighan-Lin - A solution r is a neighbor of solution s if r can be obtained from s by a sequence of greedy flips, where no bit is flipped twice. This means, starting with s, the ''Flip''-neighbor s_1 of s with the best cost, or the least loss of cost, is chosen to be a neighbor of s in the Kernighan-Lin structure. As well as best (or least worst) neighbor of s_1 , and so on, until s_i is a solution where every bit of s is negated. Note that it is not allowed to flip a bit back, if it once has been flipped. * k-Flip - A solution r is a neighbor of solution s if the
Hamming distance In information theory, the Hamming distance between two strings of equal length is the number of positions at which the corresponding symbols are different. In other words, it measures the minimum number of ''substitutions'' required to chan ...
H between s and r is at most k, so H(s, r) \leq k. Example neighborhood structures for problems on graphs: * Swap - A partition (P_2, P_3) of nodes in a graph is a neighbor of a partition (P_0, P_1) if (P_2, P_3) can be obtained from (P_0, P_1) by swapping one node p_0 \in P_0 with a node p_1 \in P_1. * Kernighan-Lin - A partition (P_2, P_3) is a neighbor of (P_0, P_1) if (P_2, P_3) can be obtained by a greedy sequence of swaps from nodes in P_0 with nodes in P_1. This means the two nodes p_0 \in P_0 and p_1 \in P_1 are swapped, where the partition ((P_0 \setminus p_0) \cup p1, (P_1 \setminus p_1) \cup p_0) gains the highest possible weight, or loses the least possible weight. Note that no node is allowed to be swapped twice. * Fiduccia-Matheyses - This neighborhood is similar to the Kernighan-Lin neighborhood structure, it is a greedy sequence of swaps, except that each swap happens in two steps. First the p_0 \in P_0 with the most gain of cost, or the least loss of cost, is swapped to P_1, then the node p_1 \in P_1 with the most cost, or the least loss of cost is swapped to P_0 to balance the partitions again. Experiments have shown that Fiduccia-Mattheyses has a smaller run time in each iteration of the standard algorithm, though it sometimes finds an inferior local optimum. * FM-Swap - This neighborhood structure is based on the Fiduccia-Mattheyses neighborhood structure. Each solution s = (P_0, P_1) has only one neighbor, the partition obtained after the first swap of the Fiduccia-Mattheyses.


The standard Algorithm

Consider the following computational problem: ''Given some instance I of a PLS problem L, find a locally optimal solution s \in F_L(I) such that c_L(I, s') \geq c_L(I, s) for all s' \in N(I, s)''. Every local search problem can be solved using the following iterative improvement algorithm: # Use A_L to find an initial solution s # Use algorithm C_L to find a better solution s' \in N(I, s). If such a solution exists, replace s by s' and repeat step 2, else return s Unfortunately, it generally takes an exponential number of improvement steps to find a local optimum even if the problem L can be solved exactly in polynomial time. It is not necessary always to use the standard algorithm, there may be a different, faster algorithm for a certain problem. For example a local search algorithm used for
Linear programming Linear programming (LP), also called linear optimization, is a method to achieve the best outcome (such as maximum profit or lowest cost) in a mathematical model whose requirements are represented by linear function#As a polynomial function, li ...
is the
Simplex algorithm In mathematical optimization, Dantzig's simplex algorithm (or simplex method) is a popular algorithm for linear programming. The name of the algorithm is derived from the concept of a simplex and was suggested by T. S. Motzkin. Simplices are n ...
. The run time of the standard algorithm is pseudo-polynomial in the number of different costs of a solution. The space the standard algorithm needs is only polynomial. It only needs to save the current solution s, which is polynomial bounded by definition.


Reductions

A Reduction of one problem to another may be used to show that the second problem is at least as difficult as the first. In particular, a PLS-reduction is used to prove that a local search problem that lies in PLS is also PLS-complete, by reducing a PLS-complete Problem to the one that shall be proven to be PLS-complete.


PLS-reduction

A local search problem L_1 is PLS-reducible to a local search problem L_2 if there are two polynomial time functions f : D_1 \rightarrow D_2 and g: D_1 \times F_2(f(I_1)) \rightarrow F_1(I_1) such that: * if I_1 is an instance of L_1 , then f (I_1 ) is an instance of L_2 * if s_2 is a solution for f (I_1 ) of L_2 , then g(I_1 , s_2 ) is a solution for I_1 of L_1 * if s_2 is a local optimum for instance f (I_1 ) of L_2 , then g(I_1 , s_2 ) has to be a local optimum for instance I_1 of L_1 It is sufficient to only map the local optima of f(I_1) to the local optima of I_1, and to map all other solutions for example to the standard solution returned by A_. PLS-reductions are transitive.


Tight PLS-reduction


Definition Transition graph

The transition graph T_I of an instance I of a problem L is a directed graph. The nodes represent all elements of the finite set of solutions F_L(I) and the edges point from one solution to the neighbor with strictly better cost. Therefore it is an acyclic graph. A sink, which is a node with no outgoing edges, is a local optimum. The height of a vertex v is the length of the shortest path from v to the nearest sink. The height of the transition graph is the largest of the heights of all vertices, so it is the height of the largest shortest possible path from a node to its nearest sink.


Definition Tight PLS-reduction

A PLS-reduction (f, g) from a local search problem L_1 to a local search problem L_2 is a ''tight PLS-reduction'' if for any instance I_1 of L_1, a subset R of solutions of instance I_2 = f (I_1 ) of L_2 can be chosen, so that the following properties are satisfied: * R contains, among other solutions, all local optima of I_2 * For every solution p of I_1 , a solution q \in R of I_2 = f (I_1 ) can be constructed in polynomial time, so that g(I_1 , q) = p * If the transition graph T_ of f (I_1 ) contains a direct path from q to q_0, and q, q_0 \in R, but all internal path vertices are outside R, then for the corresponding solutions p = g(I_1 , q) and p_0 = g(I_1 , q_0 ) holds either p = p_0 or T_ contains an edge from p to p_0


Relationship to other complexity classes

PLS lies between the functional versions of P and NP: FP ⊆ PLS ⊆ FNP. PLS also is a subclass of
TFNP In computational complexity theory, the complexity class TFNP is the class of total function problems which can be solved in nondeterministic polynomial time. That is, it is the class of function problems that are guaranteed to have an answer, and t ...
, that describes computational problems in which a solution is guaranteed to exist and can be recognized in polynomial time. For a problem in PLS, a solution is guaranteed to exist because the minimum-cost vertex of the entire graph is a valid solution, and the validity of a solution can be checked by computing its neighbors and comparing the costs of each one to another. It is also proven that if a PLS problem is
NP-hard In computational complexity theory, NP-hardness ( non-deterministic polynomial-time hardness) is the defining property of a class of problems that are informally "at least as hard as the hardest problems in NP". A simple example of an NP-hard pr ...
, then NP =
co-NP In computational complexity theory, co-NP is a complexity class. A decision problem X is a member of co-NP if and only if its complement is in the complexity class NP. The class can be defined as follows: a decision problem is in co-NP precisely ...
.


PLS-completeness


Definition

A local search problem L is PLS-complete, if * L is in PLS * every problem in PLS can be PLS-reduced to L The optimization version of the circuit problem under the ''Flip'' neighborhood structure has been shown to be a first PLS-complete problem.


List of PLS-complete Problems

This is an incomplete list of some known problems that are PLS-complete. Notation: Problem / Neighborhood structure * Min/Max-circuit/Flip has been proven to be the first PLS-complete problem. * Sink-of- DAG is complete by definition. * Positive-not-all-equal-max-3Sat/Flip has been proven to be PLS-complete via a tight PLS-reduction from Min/Max-circuit/Flip to Positive-not-all-equal-max-3Sat/Flip. Note that Positive-not-all-equal-max-3Sat/Flip can be reduced from Max-Cut/Flip too. * Positive-not-all-equal-max-3Sat/Kernighan-Lin has been proven to be PLS-complete via a tight PLS-reduction from Min/Max-circuit/Flip to Positive-not-all-equal-max-3Sat/Kernighan-Lin. *
Max-2Sat In computer science, 2-satisfiability, 2-SAT or just 2SAT is a computational problem of assigning values to variables, each of which has two possible values, in order to satisfy a system of constraints on pairs of variables. It is a special case ...
/Flip has been proven to be PLS-complete via a tight PLS-reduction from Max-Cut/Flip to Max-2Sat/Flip. * Min-4Sat-B/Flip has been proven to be PLS-complete via a tight PLS-reduction from Min-circuit/Flip to Min-4Sat-B/Flip. * Max-4Sat-B/Flip(or CNF-SAT) has been proven to be PLS-complete via a PLS-reduction from Max-circuit/Flip to Max-4Sat-B/Flip. * Max-4Sat-(B=3)/Flip has been proven to be PLS-complete via a PLS-reduction from Max-circuit/Flip to Max-4Sat-(B=3)/Flip. * Max-Uniform-Graph-Partitioning/Swap has been proven to be PLS-complete via a tight PLS-reduction from Max-Cut/Flip to Max-Uniform-Graph-partitioning/Swap. * Max-Uniform-Graph-Partitioning/Fiduccia-Matheyses is stated to be PLS-complete without proof. * Max-Uniform-Graph-Partitioning/FM-Swap has been proven to be PLS-complete via a tight PLS-reduction from Max-Cut/Flip to Max-Uniform-Graph-partitioning/FM-Swap. * Max-Uniform-Graph-Partitioning/Kernighan-Lin has been proven to be PLS-complete via a PLS-reduction from Min/Max-circuit/Flip to Max-Uniform-Graph-Partitioning/Kernighan-Lin. There is also a tight PLS-reduction from Positive-not-all-equal-max-3Sat/Kernighan-Lin to Max-Uniform-Graph-Partitioning/Kernighan-Lin. * Max-Cut/Flip has been proven to be PLS-complete via a tight PLS-reduction from Positive-not-all-equal-max-3Sat/Flip to Max-Cut/Flip. * Max-Cut/Kernighan-Lin is claimed to be PLS-complete without proof. * Min-Independent-Dominating-Set-B/k-Flip has been proven to be PLS-complete via a tight PLS-reduction from Min-4Sat-B’/Flip to Min-Independent-Dominating-Set-B/k-Flip. * Weighted-Independent-Set/Change is claimed to be PLS-complete without proof. * Maximum-Weighted-Subgraph-with-property-P/Change is PLS-complete if property P = ”has no edges”, as it then equals Weighted-Independent-Set/Change. It has also been proven to be PLS-complete for a general hereditary, non-trivial property P via a tight PLS-reduction from Weighted-Independent-Set/Change to Maximum-Weighted-Subgraph-with-property-P/Change. * Set-Cover/k-change has been proven to be PLS-complete for each k ≥ 2 via a tight PLS-reduction from (3, 2, r)-Max-Constraint-Assignment/Change to Set-Cover/k-change. * Metric-TSP/k-Change has been proven to be PLS-complete via a PLS-reduction from Max-4Sat-B/Flip to Metric-TSP/k-Change. * Metric-TSP/Lin-Kernighan has been proven to be PLS-complete via a tight PLS-reduction from Max-2Sat/Flip to Metric-TSP/Lin-Kernighan. * Local-Multi-Processor-Scheduling/k-change has been proven to be PLS-complete via a tight PLS-reduction from Weighted-3Dimensional-Matching/(p, q)-Swap to Local-Multi-Processor-scheduling/(2p+q)-change, where (2p + q) ≥ 8. * Selfish-Multi-Processor-Scheduling/k-change-with-property-t has been proven to be PLS-complete via a tight PLS-reduction from Weighted-3Dimensional-Matching/(p, q)-Swap to (2p+q)-Selfish-Multi-Processor-Scheduling/k-change-with-property-t, where (2p + q) ≥ 8. * Finding a pure Nash Equilibrium in a General-Congestion-Game/Change has been proven PLS-complete via a tight PLS-reduction from Positive-not-all-equal-max-3Sat/Flip to General-Congestion-Game/Change. * Finding a pure Nash Equilibrium in a Symmetric General-Congestion-Game/Change has been proven to be PLS-complete via a tight PLS-reduction from an asymmetric General-Congestion-Game/Change to symmetric General-Congestion-Game/Change. * Finding a pure Nash Equilibrium in an Asymmetric Directed-Network-Congestion-Games/Change has been proven to be PLS-complete via a tight reduction from Positive-not-all-equal-max-3Sat/Flip to Directed-Network-Congestion-Games/Change and also via a tight PLS-reduction from 2-Threshold-Games/Change to Directed-Network-Congestion-Games/Change. * Finding a pure Nash Equilibrium in an Asymmetric Undirected-Network-Congestion-Games/Change has been proven to be PLS-complete via a tight PLS-reduction from 2-Threshold-Games/Change to Asymmetric Undirected-Network-Congestion-Games/Change. * Finding a pure Nash Equilibrium in a Symmetric Distance-Bounded-Network-Congestion-Games has been proven to be PLS-complete via a tight PLS-reduction from 2-Threshold-Games to Symmetric Distance-Bounded-Network-Congestion-Games. * Finding a pure Nash Equilibrium in a 2-Threshold-Game/Change has been proven to be PLS-complete via a tight reduction from Max-Cut/Flip to 2-Threshold-Game/Change. * Finding a pure Nash Equilibrium in Market-Sharing-Game/Change with polynomial bounded costs has been proven to be PLS-complete via a tight PLS-reduction from 2-Threshold-Games/Change to Market-Sharing-Game/Change. * Finding a pure Nash Equilibrium in an Overlay-Network-Design/Change has been proven to be PLS-complete via a reduction from 2-Threshold-Games/Change to Overlay-Network-Design/Change. Analogously to the proof of asymmetric Directed-Network-Congestion-Game/Change, the reduction is tight. * Min-0-1-Integer Programming/k-Flip has been proven to be PLS-complete via a tight PLS-reduction from Min-4Sat-B’/Flip to Min-0-1-Integer Programming/k-Flip. * Max-0-1-Integer Programming/k-Flip is claimed to be PLS-complete because of PLS-reduction to Max-0-1-Integer Programming/k-Flip, but the proof is left out. * (p, q, r)-Max-Constraint-Assignment ** (3, 2, 3)-Max-Constraint-Assignment-3-partite/Change has been proven to be PLS-complete via a tight PLS-reduction from Circuit/Flip to (3, 2, 3)-Max-Constraint-Assignment-3-partite/Change. ** (2, 3, 6)-Max-Constraint-Assignment-2-partite/Change has been proven to be PLS-complete via a tight PLS-reduction from Circuit/Flip to (2, 3, 6)-Max-Constraint-Assignment-2-partite/Change. ** (6, 2, 2)-Max-Constraint-Assignment/Change has been proven to be PLS-complete via a tight reduction from Circuit/Flip to (6,2, 2)-Max-Constraint-Assignment/Change. ** (4, 3, 3)-Max-Constraint-Assignment/Change equals Max-4Sat-(B=3)/Flip and has been proven to be PLS-complete via a PLS-reduction from Max-circuit/Flip. It is claimed that the reduction can be extended so tightness is obtained. * Nearest-Colorful-Polytope/Change has been proven to be PLS-complete via a PLS-reduction from Max-2Sat/Flip to Nearest-Colorful-Polytope/Change. * Stable-Configuration/Flip in a
Hopfield network A Hopfield network (or Ising model of a neural network or Ising–Lenz–Little model) is a form of recurrent artificial neural network and a type of spin glass system popularised by John Hopfield in 1982 as described earlier by Little in 1974 ba ...
has been proven to be PLS-complete if the thresholds are 0 and the weights are negative via a tight PLS-reduction from Max-Cut/Flip to Stable-Configuration/Flip. * Weighted-3Dimensional-Matching/(p, q)-Swap has been proven to be PLS-complete for p ≥9 and q ≥ 15 via a tight PLS-reduction from (2, 3, r)-Max-Constraint-Assignment-2-partite/Change to Weighted-3Dimensional-Matching/(p, q)-Swap. * The problem Real-Local-Opt (finding the ɛ local optimum of a λ-Lipschitz continuous objective function V: ,13 \rightarrow ,1/math> and a neighborhood function S: ,13 \rightarrow ,13 ) is PLS-complete. * Finding a local fitness peak in a biological
fitness landscapes Fitness may refer to: * Physical fitness, a state of health and well-being of the body * Fitness (biology), an individual's ability to propagate its genes * Fitness (cereal), a brand of breakfast cereals and granola bars * ''Fitness'' (magazine) ...
specified by the NK-model/Point-mutation with K ≥ 2 was proven to be PLS-complete via a tight PLS-reduction from Max-2SAT/Flip.


References

* . {{reflist Complexity classes